Processing digital samples in a wireless receiver

ABSTRACT

A method of processing digital samples of a signal received at a receiver of a wireless communication system includes monitoring channel conditions and generating a channel indicator including at least one channel parameter by performing at least one of: estimating a channel mobility parameter and comparing it with a threshold; estimating a channel parameter of the energy of the channel outside a predefined temporal window, and comparing it with a threshold; estimating a channel temporal duration parameter and establishing if it meets predetermined criteria; estimating a channel-zero location parameter and establishing if it meets predetermined criteria; estimating a received-signal signal-to-disturbance power ratio, and comparing it to a threshold; estimating an estimated-channel-response signal-to-disturbance power ratio; estimating the degree of non-stationarity of the disturbance at the receiver input; and selecting one of a plurality of processing routines for processing the digital samples based on said channel indicator. Related receivers are also described.

This application claims priority to GB Application No.: 0721425.7, filed 31 Oct. 2007, the contents of which are incorporated herein by reference in its entirety. The present invention relates to a radio receiver in a wireless communications system, and to a method of processing radio signals.

The transmission of radio signals in modern wireless communications can be realized based on a number of different communications systems, often specified by a standard. There are increasing requirements for devices which are able to operate to support more than one of these wireless communications systems. Mobile radio receiver devices include analog radio frequency (RF)/intermediate frequency (IF) stages, which are arranged to receive and transmit wireless signals via one or more antennas. The output of the RF/IF stages is typically converted to baseband, where an Analog-to-Digital Converter (ADC) converts incoming analog signals to digital samples, which are then processed for signal detection and decoding of the information data. The ADC may alternatively operate directly at IF, in which case the conversion to baseband is performed in the digital domain. A number of different types of front end processing of the digital samples are known to implement signal detection, including rake receiver processing and channel equalisation processing.

In Code-Division Multiple Access (CDMA) wireless systems, different physical channels are multiplexed in the code domain using separate spreading sequences. In the case of orthogonal spreading codewords, the original data symbols can then be effectively separated at the receiver by despreading.

In a Wideband CDMA (WCDMA) cellular system, downlink code multiplexing is performed using Orthogonal Variable Spreading Factor (OVSF) codes. However, the OVSF codewords are orthogonal to each other only under the condition of perfect time alignment. In the presence of multipath propagation, the code orthogonality is lost, and the operation of despreading is affected by Multiple Access Interference (MAI).

CDMA mobile radio receivers conventionally employ a rake processor which relies on the correlation properties of the spreading sequences. A rake processor is described for example in J. G. Proakis, “Digital Communications”, New York: McGraw-Hill, 1995. This type of receiver is subject to performance degradation in the presence of code correlation, if the MAI between code-multiplexed transmission is comparable to the other sources of noise and interference. Under these conditions, a performance advantage may be achieved by attempting to restore the orthogonality between the codes before despreading. The sub-optimality of conventional 3GPP receivers based on rake processing causes a significant performance penalty, especially for downlink data rates increasing from the 384 kbps for WCDMA Release 99 to High Speed Downlink Packet Access (HDSPA) rates of several Mbps. When the code orthogonality is destroyed by multipath, an effective approach is to use channel equalisation instead of rake processing.

Channel equalisation techniques have been widely employed over the last decades for combating intersymbol interference on frequency selective transmission channels. Channel equalisation techniques are described in J. G. Proakis, “Digital Communications”, New York: McGraw-Hill, 1995, and S. Benedetto, E. Biglieri, and V. Castellani, “Digital Transmission Theory”, Englewood Cliffs, N.J.: Prentice-Hall, 1987. Channel equalisers have recently found application in receivers for Time Division Multiple Access (TDMA) and code division multiple access (CDMA) mobile wireless systems. An example of application of channel equalisation to a CDMA cellular system is described in A. Klein “Data Detection Algorithms Specially Designed for the Downlink of CDMA Mobile Radio Systems”, IEEE Vehicular Technology Conference, vol. 1, Phoenix Ariz., May 1997, pp. 203-207. In particular in asynchronous CDMA cellular systems, as in the case of the forward link of the 3GPP WCDMA standard, chip level equalisation allows to significantly improve the performance over conventional rake receivers, at the cost of an increased implementation complexity. This advantage is especially important for high rate data transmission, as in 3GPP high speed downlink packet access (HSDPA).

It is an aim of the present invention to optimise the processing facilities of a receiver in a wireless communication environment, in particular taking into account required signal processing performance set against the computing resources and/or power consumption required to obtain that processing performance.

According to an aspect of the present invention there is provided a method of processing digital samples of a signal received at a receiver via a channel in a wireless communication system, the method comprising monitoring channel conditions and generating a channel indicator comprising at least one channel parameter by performing at least one of:

-   -   (a) estimating a channel parameter indicative of the degree of         mobility of the channel, and comparing that estimate with a         mobility threshold;     -   (b) estimating a channel parameter indicative of the energy of         the channel outside a predefined temporal window, and comparing         that estimate with an out-of-window energy threshold;     -   (c) estimating a channel parameter indicative of at least one of         the temporal duration of the channel response and channel length         and channel delay distribution, and establishing if the         estimated temporal duration or channel length or delay         distribution meets predetermined criteria;     -   (d) estimating a channel parameter indicating the location of         the channel zeros in the z-plane, and establishing if the         location of the channel zeros meets predetermined criteria;     -   (e) estimating a channel parameter indicative of a         signal-to-disturbance power ratio of the received signal; and         comparing the estimated input signal-to-disturbance ratio with a         signal-to-disturbance ratio threshold; and     -   (f) estimating a channel parameter indicative of the         signal-to-disturbance power ratio of the estimated channel         response;     -   (g) estimating a channel parameter indicative of the degree of         non-stationarity of the disturbance at the receiver input, for         example through an estimate of the time interval over which the         input disturbance can be considered approximately constant; and     -   selecting one of a plurality of processing routines for         processing the digital samples based on said channel indicator.

It will be appreciated the invention is most effective when some or all of the parameters are estimated and the channel indicator comprises a set, or the full set, of estimated parameters.

Estimated parameters can be compared with more than one threshold to allow “bands” to be defined. For example, in the case of a Doppler estimate, low speed, medium speed, high speed.

The method is particularly useful when there is a processor for implementing the processing routines. The processor in that case can also be arranged to execute a selecting routine to which the channel indicator is supplied. The selecting routine executed by the processor then carries out the selecting step. In this way, an automatic selection of appropriate processing routines can be accomplished suitable for the prevailing channel conditions.

The processing routines can include processing functions for receiving the digital samples and generating reliability values for data decoding. These functions can include a rake receiver function and an equalisation function.

There can be a plurality of equalisation functions, each implemented by a different equalisation algorithm. Moreover, the equalisation functions can be implementable using different equalisation parameters, the parameters being selectable thereby to select one of the processing routines.

When selecting between a rake receiver function and an equalisation function, steps (a) to (g) can be carried out in any specified sequence such that a rake receiver function is selected if the estimated degree of non-stationarity of the channel exceeds the non-stationarity threshold, or if the estimated energy of the channel outside the window exceeds the out-of-window energy threshold, or if the estimated channel length or the estimated delay distribution meet the predetermined criteria, or if the location of the channel zeros meets predetermined criteria, or if the estimated input signal-to-disturbance ratio or the estimated cell geometry are below the specified threshold. If not, processing of the digital samples by equalisation function can be selected. The selection of rake receiver function can be additionally specified based on the comparison of the signal-to-disturbance ratio of the estimated channel response with a suitable threshold.

The present invention also provides a receiver for processing digital samples transmitted in a wireless communications system, the receive comprising:

-   -   means for monitoring channel conditions and for generating a         channel indicator comprising at least one channel parameter by         performing at least one of:         A method of processing digital samples of a signal received at a         receiver via a channel in a wireless communication system, the         method comprising monitoring channel conditions and generating a         channel indicator comprising at least one channel parameter by         performing at least one of:     -   (a) estimating a channel parameter indicative of the degree of         mobility of the channel, and comparing that estimate with a         mobility threshold;     -   (b) estimating a channel parameter indicative of the energy of         the channel outside a predefined temporal window, and comparing         that estimate with an out-of-window energy threshold;     -   (c) estimating a channel parameter indicative of at least one of         the temporal duration of the channel response and channel length         and channel delay distribution, and establishing if the         estimated temporal duration or channel length or delay         distribution meets predetermined criteria;     -   (d) estimating a channel parameter indicating the location of         the channel zeros in the z-plane, and establishing if the         location of the channel zeros meets predetermined criteria;     -   (e) estimating a channel parameter indicative of a         signal-to-disturbance power ratio of the received signal; and         comparing the estimated input signal-to-disturbance ratio with a         signal-to-disturbance ratio threshold; and     -   (f) estimating a channel parameter indicative of the         signal-to-disturbance power ratio of the estimated channel         response;     -   (g) estimating a channel parameter indicative of the degree of         non-stationarity of the disturbance at the receiver input, for         example through an estimate of the time interval over which the         input disturbance can be considered approximately constant; and     -   a processor for processing the digital samples in accordance         with one of a plurality of processing routines, said processor         arranged to implement a selecting routine for selecting said one         of a plurality of processing routines.

The present invention also provides a computer program product comprising program code means which, when executed by a processor, carry out the steps (a) to (g).

The present invention also provides a mobile terminal having a wireless interface for receiving a signal and providing digital samples to a receiver as defined hereinabove.

The inventors have realised that the extent to which an optimised trade-off between superior performance and use of available processing resources and/or power consumption can be attained is dependent on certain channel conditions.

In this context, the word channel is used to denote the communication path of the radio signals. According to the communication system used, channels can be defined by time, code or frequency as is well known in the art. The quality of particular channels is affected by conditions related to the propagation environment, the cellular layout and other conditions in the wireless communications system.

For a better understanding of the present invention and to show how the same may be carried into effect, reference will now be made by way of example to the accompanying drawings in which:

FIG. 1 is a schematic block diagram of a wireless communications device;

FIG. 2 is a block diagram showing selection between a rake receiver processing and an equaliser processing;

FIG. 3 is a schematic block diagram of processing functions;

FIG. 4 is a schematic diagram of a sequence of steps for selecting a processing function;

FIG. 5 is a schematic block diagram for the selection of a set of equaliser parameters;

FIG. 6 is a schematic block diagram for the selection of the equaliser algorithm;

FIG. 7 is a schematic diagram of a wireless cellular network; and

FIG. 8 is a schematic flow chart showing operation of a method of estimating cell geometry.

FIG. 1 is a schematic block diagram of a device for transmitting and receiving signals in a wireless communications system. Such a device can be implemented in a number of different ways, but in accordance with FIG. 1 a series of RF/IF stages 32 is arranged to receive and transmit wireless signals (TX, RX) via one or more antennas 20. The embodiments of the present invention discussed herein are principally concerned with receiving wireless signals, and so that transmit signals will not be mentioned further. The received signal at the output of the RF/IF stages is typically converted to baseband, where an ADC converts the analog signal into digital samples. The block 32 of FIG. 1 includes components for processing the received radio signals and providing digital signal samples r(k). This can be achieved in different ways, which are known in the art and which are not discussed further herein.

The samples r(k) are supplied to a Data Transfer Engine 30 which communicates with a processor 22, an instruction memory 24 and a data memory 26. The processor 22 is responsible for processing the samples r(k). The processor 22 can execute a number of different functions which are held in an instruction memory 24 in the form of code sequences. This provides a so-called soft modem which has a number of advantages discussed further herein.

FIG. 2 and FIG. 3 are schematic block diagrams which illustrate some among a number of different functions that are executed by the processor 22. A first function denoted by block 10 is referred to as estimation of channel parameters. This function estimates a number of different parameters related to the communication channels over which the radio signals are transmitted in the wireless communication system. The function 10 provides at time k the outputs γ_(n)(k), n=1, . . . , N_(C), where N_(C) denotes the number of estimated channel parameters, that represent a set of channel parameters derived from the received signal samples r(k). The estimated channel parameters γ_(n)(k) can be used for a number of different purposes. As illustrated in FIG. 2 and FIG. 3, they are supplied to a Selection of Rake/Equaliser Receiver function 12 which determines whether to process the received samples using a rake receiver or an equaliser receiver. The rake receiver or equaliser receiver is implemented by the processor 22 executing the appropriate code sequence from the instruction memory 24.

The parameters γ_(n)(k) are further supplied to a Selection of Equaliser Algorithm function 18 which is used in the event that an equaliser receiver 16 is selected. If used, the function 18 selects a particular algorithm for implementing the equaliser receiver 16 based on the channel parameters which have been estimated. The algorithm is supplied to the channel equaliser as denoted diagrammatically by input 17. In practice of course this will be implemented by the appropriate algorithm being selected as a code sequence from the instruction memory.

The channel parameters γ_(n)(k) are also supplied to a Selection of Equaliser Parameters function 14. The equaliser parameter selection function 14 is used in the event that an equaliser receiver is selected (as denoted by block 16) and controls parameters used for implementing the equaliser receiver, these parameters being denoted θ_(n)(k), n=1, . . . , N_(E), where N_(E) denotes the number of relevant equaliser parameters.

The use of the estimated channel parameters to control the selection of a rake receiver or equaliser receiver (function 12) will now be discussed in more detail. FIG. 2 illustrates the concept in schematic form. The digital samples r(k) are supplied to a switch 4 which has an input 5 receiving the command signal for the selection of rake receiver or equaliser processing from the function 12. In accordance with this signal, the switch 4 selects a processing path 6 via a rake receiver 7, or a processing path 8 via an equaliser 9. As is known in the art, the rake receiver includes a set of rake fingers 7 a, 7 b, . . . , for each channel transmitted on a separate channelization code. Each finger is associated with a single descramblers/despreader 9 and a weighting function 11, and the set of fingers relative to each channel are associated to an adder 13 providing a processed output on output path 15. As the operation of a rake receiver is well understood to a person skilled in the art, its function will not further be described here.

The equaliser receiver 19 comprises a chip level equaliser 16 and a plurality of descramblers/despreaders 21 a, 21 b, . . . for each channel transmitted on a separate channelization code. The outputs of the descramblers/despreaders are supplied along output path 23. An output switch 25 provides processed outputs on lines 27 to subsequent decoding functions. The switch 25 is (like the switch 4) controlled by control input 5 which receives the command signal for the selection of rake receiver or equaliser from the function 12.

While FIG. 2 illustrates the concept of processing function selection, it will readily be appreciated that in the embodiment of the invention illustrated in FIG. 1 it is not possible to identify different physical paths (6, 8, 15, 23). Instead, selection is made by downloading different code sequences dependent on whether a rake receiver function or equaliser receiver function is to be executed by the processor 22.

In such a software implementation of the receiver, where only either rake or equaliser processing is performed at any given time, the above approach also provides an overall reduction of computational complexity with respect to a conventional receiver implementing a channel equaliser in hardware. In this respect conventional modems based on a hardware implementation are forced to the choice between a design dictated by the maximum date rate requirements and the instantiation of multiple algorithms as separate areas of silicon. These solutions imply higher implementation costs, size and/or power consumption and any compromise would inevitably penalise performance. On the other hand, the proposed solution allows to reduce complexity, size and cost by reusing a common platform to adaptively select the optimum set of signal processing functions capable of maximising performance and minimise power consumption.

Reference will now be made to FIG. 4 to describe a method of selecting a processing function based on the estimation of particular channel parameters. The inventors have found that it is advantageous to apply the selection criteria by examining different channel parameters in a certain sequence (as illustrated in FIG. 4 and described below). It will readily be appreciated however that other appropriate sequences may also be utilised.

Step S1 produces an estimate of the degree of non-stationarity of the transmission channel, e.g. an estimate of the channel Doppler spread. This is known in the art and so the manner in which it is estimated is not discussed further herein. The receiver can be designed to use equaliser processing for relatively low time-varying channels, and to switch to rake processing for fast time-varying channels, where the switching threshold should depend on the desired trade-off between equaliser complexity and receiver performance. A Doppler Comparison step S2 compares a Doppler estimation signal γ₁ with a suitable threshold Th_(D). If γ₁ exceeds the threshold Th_(D), the step selects rake receiver processing. If the Doppler estimation signal γ₁ does not exceed the threshold Th_(D), the comparison produces a negative answer, and the selection process continues with an Out-Of-Window Energy Comparison step.

The out-of-window energy estimation S3 provides an estimate of the channel energy outside the time window used for equaliser channel estimation. Equaliser processing is selected only when a significant percentage of the channel energy is captured by the channel estimation window—which will not happen in the case of very high delay spread). To this end, the out-of-window energy γ₂ is compared with a threshold Th_(W). If γ₂ is greater than the threshold Th_(W), the step selects rake receiver processing. If the out-of-window energy 72 is not greater than Th_(W), to the selection process continues with a Single-Ray Channel Detection step.

Step S5 produces an estimate of the temporal duration of the channel response, or channel length or channel delay distribution, e.g. through an estimate of the channel root-mean square (rms) delay spread. A channel length or channel delay distribution estimation S5, implementing e.g. an rms delay spread estimation, generates an output γ₃ which is supplied to the Single-Ray Channel Detection step S6 to determine if the transmission channel can be considered to result from a single propagation path (multipath absent). In case of single-path propagation, the step selects rake receiver processing.

More generally identification of the conditions of very long channel impulse response (high delay spread) and single-ray channel impulse response (zero delay spread) can be used to switch the receiver to rake receiver processing.

In the event of non single-ray channel, the process passes to an estimate of channel characteristics from the location of the channel zeros in the z-plane (S7). The receiver may be designed to switch to rake processing in the presence of locations of the zeros that identify channel characteristics that are critical for the operation of the equaliser—as in the case of Baud-spaced linear equalisation with channel zeros close to the unit circle of the z-plane, or for fractionally-spaced equalisation or, more generally receive diversity equalisation (multiple receive antennas or multiple subcannels obtained by oversampling) with common zeros among the equaliser subchannels. The estimate of the channel zeros location γ₄ is supplied to a Critical Zeros Location Detection step S8, which selects rake receiver processing in the presence of locations of zeros which would be critical for operation of an equaliser. In case of non-critical channel characteristics, the selection process continues with a Cell Geometry Comparison step.

A cell geometry estimation block provides an estimate of the ratio between received intracell power and noise-plus-intercell interference power (or its inverse), or an estimate of the ratio between total received power and noise-plus-intercell interference power (or its inverse), or, more in general, an estimate of the signal-to-disturbance ratio at the detector input (or its inverse). This estimate γ₅ is then compared with a suitable threshold Th_(G). If γ₅ exceeds the threshold Th_(G), the step selects rake receiver processing. An example of a cell geometry estimation technique that can be used is discussed later.

In addition to switching between the rake and equaliser, in the case that the equaliser 16 has been selected the channel parameters estimated by the channel parameter estimation function 10 can be used to select the parameters θ_(n), n=1, . . . , N_(E) for the implementation of the equaliser 16.

FIG. 5 is a schematic block diagram for the selection of a ser of equaliser parameters within the equaliser parameter selection function 14.

The time window W for estimation of the channel impulse response in the equaliser can be selected on the basis of an estimate of the channel out-of-window energy γ₂ and/or of the channel length or channel delay distribution (delay spread) γ₃ (block 14 a of FIG. 5). This selection could additionally be based on an estimate γ₅ of the input signal-to-disturbance ratio or the cell geometry, and/or an estimate γ₆ of the signal-to-disturbance ratio of the estimated channel response.

The memory of an appropriate filter for estimation of the channel impulse response (block 14 b of FIG. 5) and the frequency of update of the estimated channel impulse response (block 14 c of FIG. 5) can be selected on the basis of an estimate of the degree of channel non-stationarity or temporal selectivity, for example through an estimate of the channel Doppler spread γ₁. The selection of the channel estimation filter could also be based on an estimate γ₅ of the input signal-to-disturbance ratio or the cell geometry, and/or on an estimate γ₆ of the signal-to-disturbance ratio of the estimated channel response.

At intermediate to low signal to noise-plus-interference ratios, the total channel estimation error can be reduced by setting to zero the estimated channel coefficients with amplitude lower than a suitable threshold. The value of this threshold can be selected based on an estimate γ₅ of the input signal-to-disturbance ratio or the cell geometry, and/or on an estimate γ₆ of the signal-to-disturbance ratio for the estimated channel coefficients (block 14 d of FIG. 5).

The memory of appropriate filters for estimation of the input noise variance σ², for example in the case of MMSE equalisation, can be made adaptive in the presence on non-stationary input noise by measuring the degree on non-stationarity γ₇ (for instance, the time interval over which the noise is approximately constant) (block 14 c of FIG. 5). On a completely different basis, the filtering may depend on the periodicity with which it is convenient to collect observations on the input noise—this in turn may be motivated simply by the need to reduce the implementation complexity in specific operating conditions or under critical processing requirements.

The number of equaliser coefficients (i.e., the equaliser time span) can be selected for example on the basis of an estimate of the channel out-of-window energy 72 and/or of the channel length or channel delay distribution (delay spread) γ₃, and on the position of the channel zeros in the z-plane γ₄ (block 14 f of FIG. 5). The number of feedforward and feedback equaliser coefficients in the case of decision feedback equalisation can similarly be based on estimates of the channel out-of-window energy γ₂ and/or of the channel length or channel delay distribution (delay spread) γ₃, and on the position of the channel zeros in the z-plane γ₄ (block 14 g of FIG. 5).

The frequency of update of the equaliser coefficients in the case of block equalisation, or the coefficient step size in the case of adaptive equalisation, can be selected on the basis of an estimate of the degree of channel non-stationarity or temporal selectivity, e.g. through an estimate of a channel Doppler spread γ₁ (block 14 h of FIG. 5).

The equaliser delay can be selected on the basis of an estimate of the channel phase characteristics derived from location of the channel zeros in the z-plane γ₄ (block 14 i of FIG. 5).

Reference will now be made to FIG. 6 which is a schematic block diagram illustrating the selection of a particular equalisation algorithm based on the estimated channel conditions. While the sequence described below represents one useful embodiment of the invention, it will be appreciated that any other sequence can be utilised to implement the selection of the appropriate equaliser algorithm.

Level 6 a in FIG. 6 denotes the selection of a linear or non-linear equaliser structure. A criterion for making the choice between a linear or non-linear equaliser can be based for example on the location of channel zeros in the z-plane γ₄. In addition, this selection could depend on specific transmission conditions. For instance, in an HSDPA system, the use of a decision feedback equaliser may be limited to a condition where the user is allocated a significant percentage of the downlink power—which determines the portion of the downlink signal that can be used for decision feedback without requiring to make decisions on other user's data.

Level 6 b in FIG. 6 denotes the selection of Baud-spaced or fractionally spaced equaliser structure. This selection is made based for instance on the location of the channel zeros in the z-plane γ₄, and should take into account the amount of excess transmission bandwidth (roll-off factor of transmit and receive filters).

It will be clear that either Baud-spaced or fractionally spaced design can be used with either of the linear or non-linear selections.

Level 6 c in FIG. 6 denotes the selection of the equaliser cost function, specifically between the options of Minimum Mean-Square Error (MMSE) criterion, Least-Squares (LS) criterion, Zero-Forcing (ZF) criterion, or a criterion based on a different cost. Parameters that can be used to select between these criteria include an estimate of the signal-to-disturbance ratio or other parameters indicative of the statistical distribution of the disturbance. For instance, acceptable performance can be obtained for high signal-to-disturbance ratios using the ZF criterion. On the other hand, the use of a LS equaliser is preferable with respect to a MMSE equaliser in the presence of non-Gaussian disturbance.

Level 6 d in FIG. 6 denotes the choice between equaliser block processing or the implementation of a tap adaptation rule. The selection between these two strategies may be made dependent on the degree of channel non-stationarity or temporal selectivity, e.g. through an estimate of a channel Doppler spread γ₁.

Block processing is mentioned for example in A. Klein, “Data Detection Algorithms Specially Designed for the Downlink of CDMA Mobile Radio Systems”, in Proceedings of IEEE Vehicular Technology Conference, vol. 1, Phoenix, Ariz., May 1997, pp. 203-207. An adaptive algorithm is mentioned in K. Hooli, M. Latva-aho and M. Juntti, “Performance Evaluation of Adaptive Chip-Level Channel Equalizers in WCDMA Downlink”, in proceedings of IEEE International Conference on Communications, vol. 6, Helsinki, Finland, June 2001, pp. 1974-1979.

One example of a cell geometry estimation technique which can be used in the above will now be described.

FIG. 7 is a schematic diagram of a wireless cellular network. A plurality of adjacent cells are illustrated, shown as being hexagonal but it will be readily appreciated that they could be of any shape. A base station B1 is shown serving cell C1 and potentially interfering with cells C2, C3, . . . , C7, served by base stations B2, B3, . . . , B7, respectively. It will readily be appreciated that there can be a large plurality of base stations and cells, and that base stations can serve any number of cells (including one).

A mobile terminal user equipment UE is shown in cell C1. As is mentioned above, the UE has a transmitter and a receiver for wireless signals. The main signal which the UE is intending to receive is labelled I_(o(1)) to represent the downlink channels from the base station B1. In a WCDMA system, on a given cell, different physical channels are multiplexed in the code domain using separate spreading sequences (OVFS codes as described for example in the 3GPP specification “Technical Specification Group Radio Access Network; Spreading and Modulation (FDD)”, TS 25.213, March 2006). In the case of orthogonal spreading code words, the original data symbols can then be effectively separated at the receiver by despreading. The composite signal transmitted from the base station B1 consists of the superposition of these physical channels further modified by multiplication by a pseudo-random scrambling code, which is unique (at least locally) to the cell. This composite signal is received at the user equipment UE after passing through a transmission channel which, if significant multipath components are present, results in a loss of orthogonality that produces multiple-access interference (MAI). The received signal is further corrupted by the addition of thermal noise and transmissions from other cells (for example I_(o(2)) and I_(o(3))). Due to lack of synchronisation and use of different scrambling codes, these interfering signals are not orthogonal to the wanted cell transmissions.

In the following, we denote by I_(or) the total transmit downlink power of the wanted cell at the base station and define Î_(or)=σ_(d) ² the received downlink power of the wanted cell at the UE, and I_(oc)=σ_(n) ² the received power of the interfering cells plus thermal noise at the UE.

Each cell in the wideband CDMA system transmits a special constant power downlink channel known as the common pilot channel (CPIPH) on a fixed OVSF code (as discussed for example in the 3GPP specification “Technical Specification Group Radio Access Network; Physical Channels and Mapping of Transport Channels onto Physical Channels (FDD)”, TS 25.211, December 2005). The CPICH is transmitted with a fixed, predetermined data pattern and can be used for channel estimation and signal-to-interference ratio (SIR) estimation.

FIG. 8 is a schematic flow diagram showing the steps in a proposed geometry estimation algorithm.

At step S1, the received CPICH symbols are subject to despreading/descrambling. In a WCDMA receiver, there is a mechanism for rake finger tracking/management, whereby fingers are assigned to significant multipath components. For each multipath component or finger, since the CPICH data is known, a channel estimate h_(l) l=0, . . . , L₀−1, where L₀ is the total number of multipath channel coefficients, can be derived from the despread CPICH symbols as denoted in step S12.

In the following discussion, extensive use is made of the strongest of the rake fingers, that is the one corresponding to the channel delay of the estimated channel tap with the highest power, and this finger is selected at step S13. Nevertheless it will be appreciated that there are other possible implementations which can include the use of more or all the relevant channel delays or fingers, and even implementations that are based on the estimation of the channel coefficients without any connection with a rake receiver.

At step S14, the orthogonality factor β is estimated. The orthogonality factor β gives the relation between Î_(or) and MAI. It is established in the following way:

Given a channel estimate h_(l), l=0, . . . , L₀−1, where L₀ is the total number of fingers, denoting by i the index of the strongest rake finger, we define the orthogonality factor β_(i) as

$\beta_{i} = \frac{{\sum\limits_{l = 0}^{L_{0} - 1}{h_{l}}^{2}} - {h_{i}}^{2}}{\sum\limits_{l = 0}^{L_{0} - 1}{h_{l}}^{2}}$ i.e., as the ratio of the channel power that is perceived as interference by the strongest finger to the total channel power.

At step S15, an estimation of the noise-plus-interference after descrambling/despreading is made. Although denoted step S15, this could be done in parallel with or prior to step S14 and again is based on the selected finger or fingers in step S13. This is done in the following way.

The received symbols are corrupted by interference due to the non-orthogonal components of the received signal from the wanted cell after passing through the multipath channel, plus the received signals from the other cells together with thermal noise. If we restrict our attention to the interference received on the CPICH symbols despread on the strongest finger, this quantity is given by σ_(i) ² =I _(oc)+β_(i) Î _(or).

In order to estimate the level of this interference, we compute the variance of the noise power on the CPICH symbols of the strongest finger

${\sigma_{i}^{2} = {{I_{oc} + {\beta_{i}{\hat{I}}_{or}}} = {{{Var}\left\{ s_{i,k} \right\}} = {{E\left\{ {{s_{i,k} - {E\left\{ s_{i,k} \right\}}}}^{2} \right\}} \approx {\frac{1}{N_{s} - 1}{\sum\limits_{k = 0}^{N_{s} - 1}{{s_{i,k} - {\frac{1}{N_{s}}{\sum\limits_{k = 0}^{N_{s} - 1}s_{i,k}}}}}^{2}}}}}}},$ where s_(i,k) denotes the k-th despread CPICH symbol on the strongest finger.

According to the above equation, in step S15 the statistical mean and variance of the despread CPICH symbols are estimated by computing the sample mean and sample variance of the sequence s_(i,k). However, the approach can be extended to the use of different mean and variance estimators.

Step S16 performs an estimation of the total input power. This is a straight-forward estimation of the quantity σ_(o) ²=Î_(or)+I_(oc), on the basis of the composite received chip sequence before despreading. This step can use the received signal samples that are employed for automatic gain control (AGC) computation.

Step S17 denotes the combination of the above parameters to estimate the quantities I_(oc) and/or Î_(or)/I_(oc) (or its inverse). This is an estimate of the cell geometry as required. The estimation of the intercell interference I_(oc) is implemented as follows:

$I_{oc} = {\frac{\sigma_{i}^{2} - {\beta_{i} \cdot \sigma_{o}^{2}}}{1 - \beta_{i}}.}$

From I_(oc) and σ_(o) ²=Î_(or)+I_(oc) derived in step S6 we can also compute an estimate of Î_(or)/I_(oc), for instance as

${{{\hat{I}}_{or}/I_{oc}} = \frac{\sigma_{o}^{2} - \sigma_{i}^{2}}{\sigma_{i}^{2} - {\beta_{i}\sigma_{o}^{2}}}},$ or, alternatively, an estimate of I_(oc)/Î_(or) as

${I_{oc}/{\hat{I}}_{or}} = {\frac{\sigma_{i}^{2} - {\beta_{i}\sigma_{o}^{2}}}{\sigma_{o}^{2} - \sigma_{i}^{2}}.}$

Note that it may be desirable to filter the above quantities to obtain reliable estimates.

With regard to step S15, the choice of the averaging period for the computation of E{s_(i,k)} can be made dependent on the speed with which the user equipment (mobile terminal) is moving. For low mobile speeds, that is for slowly time varying channels, the CPICH symbol estimate can be improved by using longer averaging periods. However, for high mobile speeds, corresponding to fast time varying propagation channels, if the averaging period is too long the CPICH symbol estimate will lag behind its actual value, thus degrading the geometry estimate.

It may not be desirable to perform the geometry estimation computations continuously, but instead to select intervals over which the computation should be performed. Preferably these intervals should be chosen to avoid times at which automatic gain control values are adjusted, and to avoid any bias in the geometry estimation caused by interference from any non-orthogonal intracell transmissions (such as synchronisation channels in the WCDMA network). 

The invention claimed is:
 1. A method of processing digital samples of a signal received at a receiver via a channel in a wireless communication system, the method comprising monitoring channel conditions and generating a channel indicator comprising at least one channel parameter by performing at least one of: (a) estimating a channel parameter indicative of a degree of mobility of the channel, and comparing that estimate with at least one mobility threshold; (b) estimating a channel parameter indicative of an energy of the channel outside a predefined temporal window, and comparing that estimate with at least one out-of-window energy threshold; (c) estimating a channel parameter indicative of at least one of a temporal duration of a channel response and channel length and channel delay distribution, and establishing if the estimated temporal duration or channel length or delay distribution meets predetermined criteria; (d) estimating a channel parameter indicating a location of channel zeros in a z-plane, and establishing if the location of the channel zeros meets predetermined criteria; (e) estimating a channel parameter indicative of a signal-to-disturbance power ratio of the received signal and comparing the estimated signal-to-disturbance ratio with at least one signal-to-disturbance ratio threshold; (f) estimating a channel parameter indicative of the signal-to-disturbance power ratio of an estimated channel response; (g) estimating a channel parameter indicative of a degree of non-stationarity of disturbance at the receiver input; the method further comprising the following steps implemented by a processor at the receiver: selecting a processing routine, from a plurality of processing routines stored in a memory at the receiver, for processing the received digital samples at the receiver based on said channel indicator, the selecting comprising downloading a selected code sequence from the memory for implementing the selected processing routine by the same processor executing the selected code sequence, wherein the plurality of processing routines comprise processing functions that include a processing function for implementing a rake receiver and a processing function for implementing an equalisation receiver; and after selecting the processing routine, processing the received digital samples at the receiver in accordance with the selected processing routine, wherein each selected routine is implemented on the same processor.
 2. The method according to claim 1, comprising the step of supplying the channel indicator to a selecting routine which, when executed by a processor, carries out the selecting step.
 3. The method according to claim 1 or 2, wherein said processing functions are configured for receiving said digital samples and generating reliability values for data decoding.
 4. The method according to claim 3, wherein the processing functions include a plurality of equalisation functions, each function implementing a different equalisation algorithm.
 5. The method according to claim 1 or 2, wherein the plurality of processing routines include an equalisation function implementable by different equalisation parameters, said parameters being selected thereby to select one of said plurality of processing routines.
 6. The method according to claim 1, wherein processing of the digital samples using a rake receiver function is selected if the estimated degree of non-stationarity of the channel exceeds a non-stationarity threshold, or if the estimated energy of the channel outside the window exceeds an out-of-window energy threshold, or if the estimated channel length or the estimated delay distribution meet the predetermined criteria, or if the location of the channel zeros meets predetermined criteria, or if the estimated input signal-to-disturbance ratio or the estimated cell geometry are below a specified threshold, and if not processing of the digital samples by the equalisation function is selected.
 7. The method according to claim 1 or 2, wherein steps (a), (b), (c), (d) and (e) are carried out in any specific sequence to select between said processing function for implementing a rake receiver and said processing function for implementing an equalisation receiver.
 8. The method according to claim 1, wherein the channel parameter indicative of the degree of mobility of the channel is indicative of the degree of non-stationarity or time selectivity of the channel.
 9. The method according to claim 8, wherein the channel parameter indicative of the degree of mobility of the channel is an estimate of the channel Doppler spread.
 10. The method according to claim 1, wherein the channel parameter indicative of a signal to disturbance power ratio of the received signal is indicative of cell geometry in a wireless cellular network.
 11. A computer program product comprising: program code means embedded in a non-transitory computer readable media which, when executed by a processor, carry out the steps of a method in accordance with claim
 1. 12. The method according to claim 1 wherein the estimation of a channel parameter indicative of a degree of non-stationarity of disturbance at the receiver input is performed through an estimate of a time interval over which the disturbance is considered approximately constant.
 13. A receiver for processing digital samples transmitted in a wireless communications system, the receiver comprising: means for monitoring channel conditions and for generating a channel indicator comprising at least one channel parameter by performing at least one of: (a) estimating a channel parameter indicative of a degree of mobility of the channel, and comparing that estimate with at least one mobility threshold; (b) estimating a channel parameter indicative of an energy of the channel outside a predefined temporal window, and comparing that estimate with at least one out-of-window energy threshold; (c) estimating a channel parameter indicative of at least one of a temporal duration of a channel response and channel length and channel delay distribution, and establishing if the estimated temporal duration or channel length or delay distribution meets predetermined criteria; (d) estimating a channel parameter indicating a location of channel zeros in a plane, and establishing if the location of the channel zeros meets predetermined criteria; (e) estimating a channel parameter indicative of a signal-to-disturbance power ratio of the received signal and comparing the estimated signal-to-disturbance ratio with at least one signal-to-disturbance ratio threshold; (f) estimating a channel parameter indicative of the signal-to-disturbance power ratio of an estimated channel response; (g) estimating a channel parameter indicative of a degree of non-stationarity of disturbance at the receiver input; and a processor arranged to implement a selecting routine to which the channel indicator is supplied for selecting from a memory at the receiver one of a plurality of processing routines stored in the memory based on said channel indicator, the selecting comprising selecting between a processing routine for implementing a rake receiver and a processing routine for implementing an equalisation receiver and downloading a code sequence of the selected processing routine from the memory for implementing the selected processing routine by the same processor; wherein the processor is further arranged to process the received digital samples, after the selecting routine, at the receiver in accordance with the selected one of the plurality of processing routines.
 14. The receiver according to claim 13, wherein said means for monitoring channel conditions and generating a channel indicator is implemented by said processor.
 15. The receiver according to claim 13 or 14, comprising a memory holding said plurality of processing routines.
 16. A mobile terminal for use in a wireless communications system comprising: a wireless interface for receiving a signal and providing digital samples; and a receiver according to claim 13 or 14 for processing the digital samples.
 17. The receiver according to claim 13 wherein the estimation of a channel parameter indicative of a degree of non-stationarity of disturbance at the receiver input is performed through an estimate of a time interval over which the disturbance is considered approximately constant.
 18. A method of processing digital samples of a signal received at a receiver via a channel in a wireless communication system, the method comprising monitoring channel conditions and generating a channel indicator comprising at least one channel parameter by performing at least one of: (a) estimating a channel parameter indicative of a degree of mobility of the channel, and comparing that estimate with at least one mobility threshold; (b) estimating a channel parameter indicative of an energy of the channel outside a predefined temporal window, and comparing that estimate with at least one out-of-window energy threshold; (c) estimating a channel parameter indicative of at least one of a temporal duration of a channel response and channel length and channel delay distribution, and establishing if the estimated temporal duration or channel length or delay distribution meets predetermined criteria; (d) estimating a channel parameter indicating a location of channel zeros in a z-plane, and establishing if the location of the channel zeros meets predetermined criteria; (e) estimating a channel parameter indicative of a signal-to-disturbance power ratio of the received signal and comparing the estimated signal-to-disturbance ratio with at least one signal-to-disturbance ratio threshold; (f) estimating a channel parameter indicative of the signal-to-disturbance power ratio of an estimated channel response; (g) estimating a channel parameter indicative of a degree of non-stationarity of disturbance at the receiver input; and the method further comprising the following steps implemented by a processor at the receiver: selecting a processing routine from a plurality of processing routines stored in a memory at the receiver, for processing the received digital samples at the receiver based on said channel indicator, wherein the plurality of processing routines include a processing routine for implementing a rake receiver and a processing routine for implementing an equalisation receiver and the selecting includes selecting either the rake receiver processing routine or the equalisation receiver processing routine and downloading a selected code sequence from the memory after the selecting for execution by the same processor for implementing the selected processing routine at the receiver. 